package com.dsj.gxrd.modules.activity.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.dsj.gxrd.modules.activity.domain.entity.RdScoreDetail;
import com.dsj.gxrd.modules.activity.domain.query.RdScoreDetailQuery;
import com.dsj.gxrd.modules.activity.domain.vo.RdScoreCockpitRankVo;
import com.dsj.gxrd.modules.activity.domain.vo.RdScoreDetailInfoVo;
import com.dsj.gxrd.modules.activity.domain.vo.RdScoreDetailVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author songpin566
 * @date 2023/10/12
 **/
public interface RdScoreDetailMapper extends BaseMapper<RdScoreDetail> {

    List<RdScoreDetailVo> selectScoreDetailList(@Param("scoreDetailQuery") RdScoreDetailQuery scoreDetailQuery,
                                                @Param("scoreDetailsLevels") Integer[] scoreDetailsLevels);

    List<RdScoreDetailInfoVo> getInfo(@Param("id") Long id, @Param("year") Integer year);

    List<RdScoreCockpitRankVo> rank(Integer year);

    RdScoreDetailVo selectScoreDetailRank(@Param("userId") Long userId, @Param("scoreDetailsLevels") Integer[] scoreDetailsLevels, @Param("year") Integer year);

}
